#ifndef __TEXTUREMANAGER_HPP__
#define __TEXTUREMANAGER_HPP__

#include <map>
#include <string>
#include <memory>
#include <SFML/Graphics.hpp>

typedef std::shared_ptr<sf::Texture> TexturePtr;

class TextureManager
{
    public :
    
        static TextureManager& instance();
        
        TexturePtr resource(const std::string& fileName);
        
    private :
    
        TextureManager();
        ~TextureManager();
    
        void loadResource(const std::string &path);
        
        std::map<std::string,TexturePtr> m_res;
};

#endif /* __IMAGEMANAGER_HPP__ */

